package com.eastfair.venueservice.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 实体类
 * 退款业务审核DTO
 * </p>
 *
 * @author dq
 * @since 2022-09-28
 */
@Data
@ApiModel(value = "BizStateDTO", description = "退款业务审核DTO")
public class BizStateDTO implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "主键")
    private Long id;
    /**
     * 申请退款金额
     */
    @ApiModelProperty(value = "申请退款金额")
    private BigDecimal refundApplyAmount;
    /**
     * 对方户名
     */

    @ApiModelProperty(value = "对方户名")
    @Size(max = 255, message = "对方户名长度不能超过255")
    private String bankAccountName;
    /**
     * 对方账号
     */
    @ApiModelProperty(value = "对方账号")
    @Size(max = 255, message = "对方账号长度不能超过255")

    private String bankAccountNum;
    /**
     * 对方开户行
     */
    @ApiModelProperty(value = "对方开户行")
    @Size(max = 255, message = "对方开户行长度不能超过255")

    private String bankName;
    /**
     * 退款方式（数据字典）
     */
    @ApiModelProperty(value = "退款方式（数据字典）")
    @Size(max = 255, message = "退款方式（数据字典）长度不能超过255")

    private String refundType;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @Size(max = 255, message = "备注长度不能超过255")
    private String remart;
    /**
     * 业务id(结算单)
     */
    @ApiModelProperty(value = "业务id(结算单)")
    private Long businessId;
    /**
     * 业务模块标识 "结算类型#{H:合同;J:结算单;}"
     */
    @ApiModelProperty(value = "结算类型#{H:合同;J:结算单;}")
    @Size(max = 255, message = "业务模块标识长度不能超过255")
    private String businessType;
    /**
     * 实际退款金额
     */
    @ApiModelProperty(value = "实际退款金额")
    private BigDecimal refundAmount;

    /**
     * 单号
     */
    @ApiModelProperty(value = "单号")
    private String businessNum;

    /**
     * 退款人
     */
    @ApiModelProperty(value = "退款人联系方式")
    private String applicantConcat;

    /**
     * 审核状态
     */
    @ApiModelProperty(value = "审核状态")
    private String examineState;

    /**
     * 审核人
     */
    @ApiModelProperty(value = "审核人")
    private String examiner;

    /**
     * 审核意见
     */
    @ApiModelProperty(value = "审核意见")
    private String examineReason;

    /**
     * 审核人id
     */
    @ApiModelProperty(value = "审核人id")
    private String examineId;


    /**
     * 退款类型
     */
    @ApiModelProperty(value = "退款类型")
    private String refundClassify;
}
